# 根据用户输入 返回指定数据
import re

from javascript.sql import Mysql


# 返回的数据 order:是否为项目页
def return_ans(value):
    lis = {"order": 0, "value": "",
           "type": 0}
    lit = []
    if value == "你好" or value == "hello":
        lis[
            'value'] = """你好啊，你要什么尽管跟我说，以下是特定指定，你可以根据你的要求查看项目详情哦\n-1:查看我的订单\n0:查看所有项目\n1:查看帮助\n你可以输入项目关键词或者B站视频评论下的项目口令查看指定项目"""

    elif value == "-1":
        lis['value'] = "抱歉，经过我多次寻找，发现你还没有任何订单"
    elif value == "0":
        try:
            db = Mysql()
            sql = " select name,key_pro from project;"
            pro_lit = db.select_db(sql, 1)
            print(pro_lit)
            if len(pro_lit):
                for (index, i) in enumerate(pro_lit):
                    lis['value'] = lis['value'] + str(index + 1) + '.' + i['name'] + f"\t口令{i['key_pro']}" + '\n'
            else:
                lis['value'] = "黑子哥还没上传任何项目"
            db.close()


        except Exception as err:
            lis['value'] = "出错了"
    elif value == "1":
        lis[
            'value'] = """你好啊，欢迎来到黑哥小店，不知道怎么用别急我来教你\n，以下是特定指定，你可以根据你的要求查看项目详情哦\n-1:查看我的订单\n0:查看所有项目\n1:查看帮助\n你可以输入项目关键词或者B站视频评论下的项目口令查看指定项目"""
    elif re.match("^[0-9]+$", value):  # 用户输入一串数字

        db = Mysql()
        sql = f"select * from project where key_pro={value}"
        lit = db.select_db(sql, 1)

        lis['order'] = 1
        db.close()
        del db
    elif len(value)<10:
        db=Mysql()
        sql=f"""select * from project where name="{value}" """
        lit = db.select_db(sql, 1)

        print("名称查找",lit)

        if lit==None:
            lis['value']="什么都没找到"
        else:


            lis['order'] = 1

        db.close()
        del db

    else:
        lis['value'] = "黑子哥正在探索更多功能，争取早日回复你的所有问题......"

    return (lis, lit)


# 查看项目详情 ，判断用户是否已经购买
def look_project(key_pro):
    db = Mysql()
    sql = f"select * from project where key_pro={key_pro}"

    lis = db.select_db(sql, 0)

    return (lis, 0)
